package com.org.oracle.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @author heiye
 * @version 1.0
 * @data 2024/8/20 下午14:05
 * 异常抛出枚举
 */
@Getter
@AllArgsConstructor
public enum ResponseCodeEnum {
    // 成功段0
    SUCCESS(200, "操作成功"),
    // 登录段1~50
    NEED_LOGIN(1, "需要登录后操作"),
    LOGIN_PASSWORD_ERROR(2, "密码错误"),
    LOGIN_FAIL(3, "登录失败"),
    // TOKEN50~100
    TOKEN_INVALID(50, "无效的token"),
    TOKEN_EXPIRE(51, "token已过期"),
    TOKEN_REQUIRE(52, "token是必须的"),
    // 参数错误 500~1000
    PARAM_REQUIRE(500, "缺少参数"),
    PARAM_INVALID(501, "无效参数"),
    PARAM_IMAGE_FORMAT_ERROR(502, "图片格式有误"),
    SERVER_ERROR(503, "服务器繁忙"),
    // 数据错误 1000~2000
    DATA_EXIST(1000, "数据已经存在"),
    DATA_NOT_EXIST(1001, "数据不存在"),
    // 权限错误 3000~3500
    NO_OPERATOR_AUTH(3000, "权限不足"),
    NEED_ADMIND(3001, "需要管理员权限"),
    // 用户未授权 4000~4500
    USER_ADDRESS_NOT_AUTHORIZATION(4000, "用户没有授权地址信息");

    final Integer code;
    final String errorMessage;
}
